package com.decent.manager.system.auth.service;

import com.decent.common.entity.manager.SystemUser;
import com.decent.manager.system.auth.jwt.JwtPayLoad;

/**
 * 清空认证管理
 *
 * @className: CleanAuthService
 * @author: wangyan
 * @date: 2022/4/16
 **/
public interface CleanAuthService {
    /**
     * 清空用户缓存的登录信息
     *
     * @param user 用户
     */
    void clearLoginUserCache(SystemUser user);

    /**
     * 按角色清空用户缓存的登录信息
     *
     * @param roleId 角色id
     */
    void clearLoginUserCacheByRole(Long roleId);

    /**
     * 清空当前用户缓存的登录信息
     *
     * @param jwtPayLoad 当前信息
     */
    void clearCurrentUser(JwtPayLoad jwtPayLoad);
}
